package com.ug.common.utils;

import cn.hutool.core.util.StrUtil;
import org.apache.http.NameValuePair;
import org.apache.http.client.utils.URLEncodedUtils;

import java.nio.charset.StandardCharsets;
import java.util.List;

/**
 * @Author LY
 * @create 2024/9/2 16:45
 * @Description http url参数解析工具类
 */
public class FormParamUtils {

    /**
     * 解析参数
     * @param data 参数，例如：access_token=&expires_in=&openid=&refresh_token=
     * @return list集合
     */
    public static List<NameValuePair> parse(String data){
        return URLEncodedUtils.parse(data, StandardCharsets.UTF_8);
    }

    /**
     * 获取对应的参数值
     * @param data 参数
     * @param name 参数名
     * @return 参数值
     */
    public static String parseValue(String data, String name){
        List<NameValuePair> params = parse(data);
        for(NameValuePair pair : params){
            if(StrUtil.equals(pair.getName(), name)){
                return pair.getValue();
            }
        }
        return null;
    }
}
